package top.linyuxb.lycloud.config.starter.annotation;

import top.linyuxb.lycloud.config.starter.common.ChangeTypeEnum;

import java.lang.annotation.*;

/**
 * Created by Intellij IDEA.
 *
 * @Author: linyuxb
 * @Date: 2024/7/31 11:07
 * @Desc: 配置变化监听 该注解作用于实例方法上
 */
@Inherited
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface LyConfigListener {
    /**
     * 监听字段key集合
     * user.name
     *
     * @return
     */
    String[] keys();

    /**
     * 改变类型
     *
     * @return
     */
    ChangeTypeEnum changeType() default ChangeTypeEnum.ANY;
}
